Recovering Activity Diagrams from Object Oriented Code: an MDA-based Approach
نویسندگان
چکیده
The success of system modernization depends on the existence of technical frameworks for information integration and tool interoperation like the Model Driven Architecture (MDA). Reverse engineering techniques play a crucial role in system modernization. This paper describes how to reverse engineering activity diagrams from object oriented code in the MDA context focusing on transformations at model and metamodel levels. A framework to reverse engineering MDA models from object oriented code that distinguishes three different abstraction levels linked to models, metamodels and formal specifications, is described. At model level, transformations are based on static and dynamic analysis. At metamodel level, transformations are specified as OCL contracts between MOF (Meta Object Facility) metamodels which control the consistency of these transformations. The level of formal specification includes algebraic specifications of MOF metamodels and metamodelbased transformations. This paper analyzes a recovery process of activity diagrams from Java code by applying static and dynamic analysis and show a formalization of this process in terms of MOF metamodels.
منابع مشابه
Recovering UML Diagrams from Java Code using Patterns
Recovering the static structure of legacy source code e.g. as an UML class diagram is quite well understood. In contrast, recovering high-level behaviour diagrams from source code is still an open issue. This paper proposes to use fuzzy pattern detection techniques for the recovery of UML collaboration diagrams from source code. The approach is based on a knowledge base of basic datatypes and o...
متن کاملBehavior Abstractions to support Reverse Engineering
Most approaches for recovering objects from procedural code are exclusively based on static information. These approaches have the advantage to build on information easily available. However, with code that is not built around very strong and ubiquitous data structures, substantial portions of this code cannot be clearly assigned to one of the objects the object-oriented system is made of. Here...
متن کاملAutomatic Generation of Java Code from UML Diagrams using UJECTOR
In recent years, the significance of automated generation of object-oriented code from UML diagrams has increased due to its benefits, such as, cost reduction and accuracy. Consistency Checking between UML diagrams, and ensuring accuracy, maintainability, efficiency, and completeness of the generated code are the main concerns in this area. This paper extends our work on a tool called UJECTOR f...
متن کاملAn approach to recovering data flow oriented design of a software system
This paper describes an approach for recovering data flow oriented design of a software system from its source code. Data flow diagrams are used for analysis and design in software development in variations of Structured Analysis techniques. A tool that extracts designs based on these diagrams from the code will be useful in maintaining the consistency of design document with its code, migratin...
متن کاملGenerating FoCaLiZe Specifications from UML Models
UML is the defacto standard language to graphically describe systems in an object oriented way. Once an application has been modeled, Model Driven Architecture (MDA) techniques can be applied to generate code from such models. Because UML lacks formal basis to analyze and check model consistency, it is pertinent to choose a formal target language (in the MDA process) to enable proofs and verifi...
متن کامل